Many aspects of the way units behave can be changed with the rule editor, but underneath it all there are very few primitive actions that a unit can make. The complex features of the game are based upon how those few primitive actions are interpreted.
The primitive actions that a unit can take are to move in one of the eight directions around it or to stay where it is. If there is an enemy unit there this will cause combat to occur. If there is a friendly unit there which can transport the moving unit (and has room left) then this will load it. Otherwise the result depends upon the terrain.
An air unit can move over any terrain including enemy and neutral cities. However, you cannot fly over enemy units without attacking them. A sea unit can only move on water (lake or sea) and friendly cities. They can also attack coastal land units. However only one sea unit can occupy a water square at a time. Any number can be in a city. A land unit can only move on land, friendly cities or transport units. Moving onto a city or transport will refuel any unit that needs fuel.
Generally a unit that needs fuel will use one point of fuel for every square it moves. However, a unit that doesn't move during a turn (including sleeping units) may have to hover, using one point of fuel per turn. The exception is that some units do not need fuel to hover over land. For examples, helicopters can land anywhere so they wouldn't have to hover over land squares. They still need fuel to hover over sea squares though. Furthermore, Radar units are defined as needing fuel. This keeps them from moving more than one square away from a city. Actually they should not be able to move, but this is inconvenient since the unit couldn't be seen and couldn't unload from a transporting sea unit.
Units can be moved with the mouse or from the keyboard. The numbers 1-9 move the unit one square away. These commands are intended for use with a numeric keypad, where 5 indicates no move, 1 means South West, and 9 means North East. Also, clicking on a square adjacent to the unit moves it there. Furthermore, clicking on the unit and dragging to another square commands the unit to follow a path to that square.
Missiles can only be moved once. This gives them a direction and they will continue in that direction until destroyed or out of fuel. The keyboard commands only specify eight directions, but the click and drag or come here (‘H’) commands can be used to specify any angle. Missiles will not attack friendly or neutral units or cities, but your units can be destroyed if they are within the radius of a nuclear blast. Missiles make unseen squares become visible so they can be used to explore, although this may change in a future version. A missile will be reflected off the edge of the map if wrap mode is disabled.
Movement Paths
There are three algorithms for computing the path of units. Missiles simply move straight until destroyed. Air units use an internal map of the cities to find a path to the destination that can be flown without running out of fuel. However, this is only done when the unit is currently in a city. Otherwise, it will try moving straight to the destination until it needs to refuel. If the destination is out of range, the unit will move as close as possible, then move back to a city to refuel. At that point it will compute a correct path to the destination. So it is best to move an air unit into a city before giving it a destination far away. When memory is very low the game may discard the internal city map to save space (and avoid crashing). In that case air units will not be able to compute a perfect path to distant locations, and may become trapped in a cycle.
All other units use the same algorithm to find a path to the destination square. This will find the shortest path to the destination that can be followed by the unit. Squares that have not been explored will be treated as if they can be crossed. Air units can always go straight to their destination but land and sea unit may have to follow a path that goes around obstacles. If the path goes through unexplored territory the unit may find itself blocked when it gets there. The unit will compute a new path as soon as an obstacle is discovered anywhere in its path. Before each move the unit will check the entire path for newly discovered obstacles and compute a new path immediately if any are found. Therefore the unit will know about any obstacles that any friendly unit detects. Furthermore, it will wake up if it moves within sight of an enemy unit or non-friendly city (given the default Wake Reasons).
While a unit is moving to a destination it will monitor its fuel and distance to the nearest refueling point. Units will refuel when required. However, a unit may find itself with no place to refuel if the enemy captures a city, destroys a carrier or simply if the carrier moves out of range. The only way to fly a “suicide” mission is by moving the unit one square a time time, either with keypad commands or by clicking on adjacent squares.